Method and electronic device for managing functionality of applications

ABSTRACT

There is provided an electronic device for managing functionality of applications. The device including a processor which detects an input with respect to a graphical element displayed on a display of the electronic device, the graphical element representing a first application, generates at least one sub-graphical element from the graphical element, the at least one sub-graphical element representing a functional data item associated with the first application and controls the display to display the at least one sub-graphical element.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from Indian Patent Application No.201641023876, filed on Jul. 12, 2016 in the Indian Patent Office, thedisclosure of which is incorporated herein by reference in its entirety.

BACKGROUND 1. Field

Apparatuses and methods consistent with exemplary embodiments relate toan electronic apparatus, and more particularly to an electronicapparatus and a method capable of managing functionality of applicationsavailable of the electronic apparatus.

2. Description Of Related Art

Related art an electronic device (e.g., a mobile device, a handhelddevice, a smartphone, and tablets) includes a plethora of applicationseach having one or more associated functionalities. These applicationscan be pre-installed in the electronic device by the manufacturer orinstalled by the user of the electronic device.

If the user of the electronic device enables a functionality associatedwith a pre-installed application, the electronic device applies thefunctionality globally to all applications installed or later installedon the electronic device. For example, if the user sets the electronicdevice to use mobile data functionality (e.g., Third Generation (3G)mobile data) instead of Wi-Fi functionality, all applications installedon the electronic device will transmit and receive data via 3G insteadof Wi-Fi. In another example, if the user sets the electronic device touse a screen orientation application functionality (e.g., lockingorientation to landscape mode) all applications will automaticallylaunch in landscape mode (e.g., User Interface (UI) in landscape mode)regardless of the orientation of the electronic device. However, thereexists no mechanism in which a user can individually apply anapplication functionality on an application-by-application basis,instead of having the application functionality applied globally to allapplications installed on the electronic device. Moreover, existingmechanisms provide the user with limited control over functionalities,and existing systems are limited in this regard.

Further, in a related art electronic device, application developersgenerally create one or more default application specific policies forcontrolling electronic devices. For example, one policy of a cameraapplication prevents the camera application from launching when batterypercentage is 5% or less. The user cannot circumvent the policy and thuswould be unable to use the camera application when the battery level is5% or less.

SUMMARY

Exemplary embodiments address at least the above problems and/ordisadvantages and other problems and disadvantages not described above.Also, the exemplary embodiments are not required to overcome theproblems and disadvantages described above, and may not overcome any ofthe problems and disadvantages described above.

Exemplary embodiments may provide an electronic apparatus capable ofmanaging functionality of applications available in an electronic deviceand a method thereof.

According to an exemplary embodiment, there is provide an electronicdevice for managing functionality of applications, the electronic devicecomprising: a memory; and a processor, coupled to the memory, configuredto: detect an input with respect to a graphical element displayed on adisplay of the electronic device, the graphical element representing afirst application; generate at least one sub-graphical element from thegraphical element, the at least one sub-graphical element representing afunctional data item associated with the first application; and controlthe display to display the at least one sub-graphical element.

The processor may be further configured to: determine a total number offunctional data items associated with the first application; anddynamically generate at least two sub-graphical elements, wherein the atleast two sub-graphical elements are equal or less in number compared tothe total number of functional data items associated with the firstapplication.

The processor may be further configured to: detect an association eventinput with respect to a second application and the functional data itemassociated with the first application; dynamically create at least onepolicy based on the association event; and apply the at least one policyto the second application.

The processor may be further configured to: apply the at least onepolicy to a third application other than the first application and thesecond application.

The at least one policy may comprise at least one of a dynamic policy, aderived policy, and a user created policy.

The processor may be further configured to display the at least onesub-graphical element in a functionality display region provided on atleast a portion of the display of the electronic device.

The processor may be further configured to: detect when the at least onepolicy applied to the second application is met; identify at least onefunctionality which is associated with the first application andconfigured for the second application based on the at least one policy;and perform an action on the second application corresponding to the atleast one functionality.

The action may further comprise at least one of: removing the at leastone functionality, enabling the at least one functionality, anddisabling the at least one functionality.

The functional data item may comprise at least one of: a functionalityassociated with the first application, a functionality associated with adynamic policy, a functionality associated with a derived policy, afunctionality associated with a user created policy, and arecommendation of combining at least two of the functionalitiesassociated with the first application, the dynamic policy, the derivedpolicy, and the user created policy.

The display may be configured to display the at least one sub-graphicalelement based on a priority associated with the functional data item.

According to another exemplary embodiment, there is provided anelectronic device for managing a functionality of applications, theelectronic device comprising: a memory; and a processor, coupled to thememory, configured to: detect an input entered with respect to agraphical element representing a first application displayed on adisplay of the electronic device; and control the display to display atleast one sub-graphical element representing a functional data itemassociated with a second application in response to the detected input.

The processor may be further configured to: detect an association eventinput with respect to the first application and the functional data itemassociated with the second application; and perform an action on thefirst application based on the association event.

The action may comprise at least one of: dynamically creating andapplying at least one policy to the first application based on theassociation event, enabling at least one functionality associated withthe second application, and disabling the at least one functionalityassociated with the second application.

The processor may be further configured to: detect that at least onepolicy is met for the first application; identify at least onefunctionality which is associated with the second application andconfigured for the first application based on the at least one policy;and perform an action on the first application corresponding to the atleast one functionality.

The action may comprise at least one of: inverting the at least onefunctionality, enabling the at least one functionality, and disablingthe at least one functionality.

The functional data item may comprise at least one of: a functionalityassociated with the first application, a functionality associated with adynamic policy, a functionality associated with a derived policy, afunctionality associated with a user created policy, and arecommendation to combine at least two of the functionalities associatedwith the second application, the dynamic policy, the derived policy, andthe user created policy.

The processor may be configured to display the at least onesub-graphical element on the display based on a priority associated withthe functional data item.

According to another exemplary embodiment, there is provided a method ofmanaging functionality of applications of an electronic device, themethod comprising: detecting, by a processor, an input entered withrespect to a graphical element displayed on a display of the electronicdevice, the graphical element representing a first application;generating, by the processor, at least one sub-graphical element fromthe graphical element, the at least one sub-graphical elementrepresenting a functional data item associated with the firstapplication; and controlling, by the processor, the display to displaythe at least one sub-graphical element.

The method may further comprise: detecting, by the processor, anassociation event input with respect to a second application and thefunctional data item associated with the first application; dynamicallycreating, by the processor, at least one policy based on the associationevent; and applying, by the processor, the at least one policy to thesecond application.

The method may further comprise: applying, by the processor, the atleast one policy to a third application other than the first applicationand the second application.

According to another exemplary embodiment, there is provided anapparatus comprising: a processor configured to: detect an input withrespect to a feature of a first application; generate at least onesub-feature corresponding the feature of the first application, thesub-feature representing a functional data item associated with thefirst application; and perform an association operation to associate theat least one sub-feature to a second application.

The processor may be further configured to: dynamically create at leastone policy based on the association operation associating the at leastone sub-feature to the second application; and apply the at least onepolicy to the second application.

The processor may be further configured to display an icon on a displayof the apparatus to indicate the at least one sub-feature.

The processor may be further configured to display the icon in vicinityof another icon representing the second application displayed on thedisplay.

According to another exemplary embodiment, there is provided a method ofmanaging functionality of applications of an electronic apparatus, themethod comprising: detecting an input with respect to a feature of afirst application; generating at least one sub-feature corresponding thefeature of the first application, the sub-feature representing afunctional data item associated with the first application; andperforming an association operation to associate the at least onesub-feature to a second application.

The method may further comprise: dynamically creating at least onepolicy based on the association operation associating the at least onesub-feature to the second application; and applying the at least onepolicy to the second application.

The method may further comprise: displaying an icon on a display of theelectronic apparatus to indicate the at least one sub-feature.

The method may further comprise: displaying the icon in vicinity ofanother icon representing the second application displayed on thedisplay.

These and other aspects of the exemplary embodiments herein will bebetter appreciated and understood when considered in conjunction withthe following description and the accompanying drawings. It should beunderstood, however, that the following descriptions, while indicatingexemplary embodiments and numerous specific details thereof, are givenby way of illustration and not of limitation. Many changes andmodifications may be made within the scope of the exemplary embodimentsherein without departing from the spirit thereof, and the exemplaryembodiments herein include all such modifications.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects of one or more exemplary embodiments willbecome more apparent by reference to exemplary embodiments thereof whichare illustrated in the accompanying drawings. Understanding that thesedrawings depict only exemplary embodiments and are not therefore to beconsidered to be limiting of the scope of the disclosure, the principlesherein are described and explained with additional specificity anddetail through the use of the accompanying drawings, in which: Exemplaryembodiments are illustrated in the accompanying drawings, throughoutwhich same reference numerals or symbols indicate corresponding parts inthe various drawings. The disclosure herein will be better understoodfrom the following description with reference to the drawings, in which:

FIG. 1 illustrates a block diagram illustrating an electronic deviceincluding a framework manager and a functionality management devicecommunicating therewith which manages one or more policies of one ormore applications, according to an exemplary embodiment;

FIG. 2A illustrates an exemplary embodiment, in which, a functionalitymanagement device interacts with a framework manager to access one ormore policies associated with (i.e., applied to) one or moreapplications;

FIG. 2B is a flow diagram illustrating a method in which a functionalitymanagement device interacts with a framework manager to access a policyapplied to an application, according to an exemplary embodiment;

FIG. 3 illustrates various components of an electronic device formanaging functionality of applications, according to an exemplaryembodiment;

FIG. 4 illustrates an exemplary embodiment, in which, sub-graphicalelements are generated from a graphical element, according to anexemplary embodiment;

FIG. 5 illustrates a framework manager capable of extracting one or morepolicies from a policy database, according to an exemplary embodiment;

FIG. 6 illustrates an exemplary embodiment, in which, derived policiesare created and maintained in a derived policies database;

FIG. 7 illustrates an application monitoring device, which monitors anactivity of an application, according to an exemplary embodiment;

FIG. 8 is a flow diagram illustrating a method of displaying one or morepolicies based on a recommendation engine device and a prioritizationdevice, according to an exemplary embodiment;

FIG. 9 is a flow diagram illustrating a method of managing functionalityof applications, according to an exemplary embodiment;

FIG. 10 is another flow diagram illustrating a method of managingfunctionality of applications, according to an exemplary embodiment;

FIG. 11 is a flow diagram illustrating a method of generating at leastone sub-graphical element from the graphical element displayed on thedisplay of the electronic device, according to an exemplary embodiment;

FIG. 12 illustrates an exemplary embodiment, in which, sub-graphicalelements are generated from a graphical element;

FIGS. 13A, 13B and 13C show an illustration in which a dynamic policy iscreated and maintained in the dynamic policies of a policy database,according to an exemplary embodiment;

FIGS. 14A, 14B and 14C show another illustration in which a dynamicpolicy is created and maintained in the dynamic policies of the policydatabase, according to an exemplary embodiment;

FIGS. 15A, 15B and 15C show an illustration in which a systemfunctionality is created and maintained in the system policies of thepolicy database, according to an exemplary embodiment;

FIGS. 16A, 16B and 16C show another illustration in which a systemfunctionality is created and maintained in the system policies of thepolicy database according to an exemplary embodiment;

FIGS. 17A and 17B show an illustration in which an applied policy isdisabled (reversed) in response to an input from a user, according to anexemplary embodiment;

FIGS. 18A and 18B show an illustration in which dragging a sub-graphicalelement to a functionality region on the display applies a functionaldata item associated with the sub-graphical element to all applicationsinstalled on the electronic device, according to an exemplaryembodiment;

FIGS. 19A and 19B show an illustration of displaying sub-graphicalelements representing functional data items which are associated withthe first application and currently applied to the second application,according to an exemplary embodiment;

FIG. 20 is an illustration of applying multiple functional data items toan application, according to an exemplary embodiment;

FIG. 21 illustrates an exemplary embodiment, in which, policies appliedto an second application are imposed; and

FIG. 22 illustrates a computing environment implementing the method ofmanaging functionality of applications in the electronic device,according to an exemplary embodiment.

DETAILED DESCRIPTION

Hereinafter, exemplary embodiments will be described in detail withreference to accompanying drawings. Elements illustrated in theaccompanying drawings are referred to in the following descriptions ofthe exemplary embodiments and for clarity, like reference numerals orsymbols presented in respective drawings denote like elements, whichsubstantially perform the same functions.

In the following description, if terminologies, each of which includessuch an ordinal number as ‘first’, ‘second’ and the like, are used,those terminologies are used (unless expressly specified otherwise)merely to describe various elements. The terminologies are only used forthe purpose of differentiating one element from other elements. In doingso, the various elements should be non-limited by the correspondingterminologies, respectively. The terminologies used in the followingdescription of various exemplary embodiments are applied for explanationpurpose only and not for the purpose of limiting the exemplaryembodiments as defined by the appended claims and their equivalents.

The disclosure herein and the various features and advantageous detailsthereof are explained more fully with reference to the non-limitingexemplary embodiments that are illustrated in the accompanying drawingsand detailed in the following description. Descriptions of well-knowncomponents and processing techniques are omitted so as to notunnecessarily obscure the exemplary embodiments herein. Also, thevarious exemplary embodiments described herein are not necessarilymutually exclusive, as some exemplary embodiments can be combined withone or more other exemplary embodiments to form new exemplaryembodiments. The term “or” as used herein, refers to a non-exclusive or,unless otherwise indicated. The examples used herein are intended merelyto facilitate an understanding of ways in which the exemplaryembodiments herein can be practiced and to further enable those skilledin the art to practice the exemplary embodiments herein. Accordingly,the examples should not be construed as limiting the scope of theexemplary embodiments herein.

Accordingly, the disclosure herein provides a method of managingfunctionality of applications available in an electronic device.

Unlike related art systems and methods, one or more of the exemplaryembodiments of the disclosure provides a user with a capability tocontrol or alter the policies associated with functional data itemsassociated with one or more applications displayed on the electronicdevice.

Unlike related art systems and methods, one or more of the exemplaryembodiments of the disclosure allows the user of the electronic deviceto leverage the functional data items associated with the firstapplication (along with the functionalities associated with thefunctional data items) by providing the user the option to apply thefunctional data items (along with respective functionalities) to the oneor more second applications.

For example, in the related art systems and methods, the user needs toinvoke the settings of a particular application in order to view orchange them. If the user needs to change the alert mode for a messagingapplication from a ringing mode to a silent mode, then the user mustfirst launch the messaging application. The user then needs to navigateto an appropriate option to change and apply any desired settings.

Unlike the related art systems and methods, the method according to oneor more exemplary embodiment can interchangeable apply functionalitiesof one application (e.g., first application) and at least one otherapplication (e.g., second application). For example, in the related artmechanisms, a policy of a camera application is to disable cameraoperations when the battery level of the electronic device housing thecamera is 5% or less. The electronic device may extract and apply thispolicy to any application, such as a messaging application (e.g.,disable message notifications whenever the battery level is 5% or less).Thus, according to an exemplary embodiment, the user may create a newlyapplied policy, which the electronic device may maintain for futurepurposes and displayed on the display.

Referring now to FIGS. 1 through 22, where similar reference charactersdenote corresponding features consistently throughout the drawings,exemplary embodiments of the present disclosure are illustrated.

FIG. 1 illustrates a block diagram of an electronic device 100 includinga framework manager 101 and a functionality management device 102,according to an exemplary embodiment as disclosed herein. In theexemplary embodiment, the electronic device 100 includes a number ofapplications (e.g., first, second, third, and fourth applications) asshown in FIG. 1 (Applications 1-4). In another exemplary embodiment, theelectronic device 100 may include more than four applications or lessthan four applications. The functionality management device 102 maymanage one or more policies of the applications.

The framework manager 101 may interact with the functionality managementdevice 102 to monitor service permissions of Applications 1-4 based onone or more policies applied to each application (e.g., Applications1-4). The service permissions may include, for example, service to use aspeaker, service to use Wi-Fi, service to launch/run an application(e.g., Application 3) at a particular Wi-Fi location (i.e., whenconnected to a specific Wi-Fi network), and service to use mobile dataonly for a particular application (e.g., Application 4). Thefunctionality management device 102 may communicate with a policydatabase to monitor/determine one or more policies associated (with(i.e., applied to) each of the applications. An example policy databaseis shown below in Table 1 as the policies may include, for example,muting alerts or notifications for the Application 1, connecting to homeWi-Fi when the Application 2 is in an OFF state, running/synching theApplication 3 only when connected to a Wi-Fi location at work, andrunning the Application 4 only when connected to a mobile network (i.e.,using mobile data). The policies illustrated herein are merelyexemplary, and as such, numerous other policies may be provided.

Unlike related art methods and systems, the proposed functionalitymanagement device 102 according to one or more of the exemplaryembodiment can interact with the framework manager 101 to monitor andallow/disallow the policies and functionalities associated with (i.e.,applied to) each of the applications. The operations of functionalitymanagement device 102 are further detailed in conjunction with FIGS. 2A,2B and FIG. 3.

TABLE 1 Applications State Applied Policy Application 1 ON MuteApplication 2 OFF Run home Wi-Fi Application 2 ON

FIG. 2A illustrated an exemplary embodiment, in which, the functionalitymanagement device 102 interacts with the framework manager 101 to accessthe policy/policies associated with (i.e., applied to) the one or moreapplications,. According to an exemplary embodiment, the functionalitymanagement device 102 may interact with the framework manager 101 toallow/disallow policies applied to applications from a policy database(as shown in Table 2). For example, the functionality management device102 may interact with the framework manager 101 to set the appliedpolicies to ‘ON’ or ‘OFF’ states.

A policy is created and applied to an application, as shown in FIG. 2B.Policies created and applied to applications are included in the policydatabase and monitored by the functionality management device 102.

TABLE 2 Applications State Applied Policy Application 1 ON MuteApplication 2 OFF Run home Wi-Fi Application 2 ON Application ON P

FIG. 2B is a flow diagram 200 illustrating a method according to anexemplary embodiment, in which, the functionality management device 102interacts with the framework manager 101 of the electronic device 100 toaccess a policy applied to an application, according to an exemplaryembodiment as disclosed herein. At step 202, the method includesdetecting an input event corresponding to the graphical element of thefirst application associated with a policy “P”. According to anexemplary embodiment, the functionality management device 102 may detectthe input event corresponding to the graphical element of the firstapplication associated with the policy “P”.

At step 204, the method includes determining, by the functionalitymanagement device 102, the state of the policy “P” from a database(Database 1) which includes the policy “P”. For example, at step 204,the functionality management device 102 determines whether to allow ordisallow the policy “P” (e.g., allow/disallow the policy “P” to executeor be applied). At step 206, the method includes applying the policy(e.g., Run) to the services associated with the first application basedon the state determined by the functionality management device 102 instep 204 (e.g., the determination by the functionality management device102 to allow the policy “P”). At step 208, the method includesterminating the services associated with the first application bydiscarding (i.e., disallowing) the policy “P” based on the statedetermined by the functionality management device 102 in step 204 (e.g.,the determination by the functionality management device 102 to disallowthe policy “P”).

Unlike related art systems and methods, according to an exemplaryembodiment, the user may create/derive a new policy (“P”) and apply thesame to one or more applications.

FIG. 3 illustrates various components of the electronic device 100,according to an exemplary embodiment as disclosed herein. According tothe exemplary embodiment, the electronic device 100 can be, for example,a laptop, a desktop computer, a mobile phone, a smartphone, a PersonalDigital Assistant (PDA), a tablet, a phablet, a consumer electronicdevice, a dual display device, or any other electronic device. Inanother exemplary embodiment, the electronic device 100 can be awearable device. The wearable device can be, for example, a smartwatch,a smart bracelet, smart glasses, or the like. The electronic device 100includes the functionality management device 102, a controller 104, acommunication interface 106, a display 108 (e.g., a Cathode Ray Tube(CRT) display, a Liquid Crystal Display (LCD)), a recommendation enginedevice 110, a prioritization device 112, and a storage device 114. Thestorage device 114 can include a functional data item database 116 and apolicy database 118. According to an exemplary embodiment, the one ormore functionalities of the functional data item database 116 aredetailed in conjunction with FIG. 4. According to an exemplaryembodiment, the one or more functionalities of the policy database 118are detailed in conjunction with FIG. 5. The functionality managementdevice 102, controller 104, communication interface 106, display 108,recommendation engine device 110, and prioritization device 112 areimplemented as one hardware processor but may also be implemented as acombination of more than one hardware processors.

The functionality management device 102 may detect an input entered withrespect to a graphical element displayed on the display 108. The inputmay include, for example, motion gestures, long press gestures, pinchgestures, swipe gestures, touch gestures, or the like. The graphicalelement may be, for example, an icon (400) corresponding to anapplication installed on the electronic device 100 (e.g., firstapplication, second application, etc.), a graphical data itemcorresponding to the application, a graphical symbol corresponding tothe application, or the like. In an exemplary embodiment, the electronicdevice 100 may include (or, be associated with or connected to via awireless or wired connection) the display 108 and a Light-emitting diode(LED) interfaced with the controller 104 and the functionalitymanagement device 102. The controller 104 may generate display data(e.g., the graphical element of an application) to be rendered on thedisplay 108. Further, the functional management device 102 may generateat least two sub-graphical elements from the graphical element. Forexample, the functional management device 102 may split the graphicalelement of a first application (as shown in FIG. 4) into twosub-graphical elements A1 and A2 410). According to an exemplaryembodiment, the functional management device 102 may first check todetermine whether the generation of at least two sub-graphical elementsfrom the graphical element is possible (i.e., determine whether splitfunctionality is available). In generating the sub-graphical elements(420), the functional management device 102 may identify functional dataitems associated with the first application (430) and dynamicallygenerate sub-graphical elements which are equal in number to theidentified functional data items. The functional management device 102may control the display 108 to display the sub-graphical elements, alongwith a functional data item of the first application on each of thesub-graphical elements, as detailed in conjunction with FIG. 4. Thefunctional data items respectively displayed on the sub-graphicalelements differ from one another.

In an exemplary embodiment, the functional data item is at least one of:a functionality associated with the first application, a functionalityassociated with a dynamic policy, a functionality associated with aderived policy, a functionality associated with a user created policy,and a recommendation to combine at least two of the functionalitiesassociated with the first application, the dynamic policy, the derivedpolicy, and the user created policy.

Functionalities of the Wi-Fi application may include, for example, aWi-Fi secure mode and a Wi-Fi unsecured mode, as shown according to anexemplary embodiment in FIG. 12.

Default functionalities may be established and registered into thesystem (i.e., system functionality) by an Original EquipmentManufacturer (OEM) development team, by the system itself (i.e., dynamicpolicy) based on system usage, or by the user (i.e., derivedfunctionality). Further, characteristics of the system and dynamicpolicy will be further described below in detail in conjunction withFIG. 5.

The application monitoring device includes at least one submodule (e.g.,Wi-Fi monitoring device, mobile data monitoring device, and locationmonitoring device, or the like) for monitoring activity of anapplication. The operations of the application monitoring device aredetailed in conjunction with FIG. 7.

The functional management device 102 may detect an association eventinput with respect to a second application and a functional data itemassociated with the first application. The association event mayinclude, for example, a drag input dragging (as detailed in FIG. 13C) asub-graphical element of the first application onto a graphical elementrepresenting the second application. Further, the sub-graphical elementsare displayed on the display 108. The placement and locations may beuser defined/as per User Interface (UI) protocol of the electronicdevice 100.

Once the functionality associated with the sub-graphical element isapplied to the second application (e.g., the sub-graphical element isdragged onto graphical element representing the second application), thefunctionality management device 102 may dynamically create one or morepolicies based on the association event. The functional managementdevice 102 may apply one or more of the policies to the at least onesecond application. The functional management device 102 may detect whena policy applied to the second application (e.g., the policy applied tothe second application based on the association event) has been met orsatisfied.

The functionality management device 102 may identify a functionalitywhich is associated with the first application and configured for thesecond application based on the at least one policy. Furthermore, thecontroller 104, communicatively coupled to the functionality managementdevice 102, may perform an action corresponding to the identifiedfunctionality on the first application.

In an exemplary embodiment, the action may include at least one ofinverting (i.e., reversing, as detailed in FIGS. 17A and 17B) thefunctionality which is associated with the first application andconfigured for the second application, enabling the functionality, anddisabling the functionality.

In an exemplary embodiment, the communication interface 106 maycommunicate with external devices via one or more networks, and thecomponents of the communication interface 106 may communicateinternally. The storage device 114 may include one or morecomputer-readable storage media. The storage device 114 may includenon-volatile storage elements. Examples of such non-volatile storageelements may include magnetic hard disc, optical discs, floppy discs,flash memories, or forms of electrically programmable memories (EPROM)or electrically erasable and programmable (EEPROM) memories. Inaddition, the storage device 114 may, in some examples, be anon-transitory storage medium. The term “non-transitory” indicates thatthe storage medium is not embodied in a carrier wave or a propagatedsignal. However, the term “non-transitory” should not be interpreted tomean that the storage device 114 is non-movable. In some examples, thestorage device 114 may store larger amounts of information than amemory. In certain examples, a non-transitory storage medium may storedata that can, over time, change (e.g., in Random Access Memory (RAM) orcache).

The recommendation engine device 110 may perform one or more of thefollowing:

a) Detect a multi-touch input with respect to a graphical elementrepresenting the first application.

b) Check whether split functionality is available

c) If split functionality is available, provide device feedback (e.g.,haptic feedback, visual feedback, audible feedback, or a combinationthereof) to user

d) Recommend and display the functionality having the highest priority.

e) Detect an additional input entered by the user and provide additionalfunctionalities having the next highest priority (as shown in Table 3).

TABLE 3 Recommendation engine device 110 and prioritization device 112database Module to Graphical Functionality Functionality enable/disableAction to be element Available Type functionality performed PriorityWi-Fi Wi-Fi ON System Wi-Fi module ON/allow Wi-Fi 1 Wi-Fi Wi-Fi OFFSystem Wi-Fi module OFF/disallow Wi-Fi 1 Wi-Fi Wi-Fi Home Dynamic Wi-Fimodule Only allow for this 2 App application Wi-Fi Wi-Fi Office DynamicWi-Fi module Only allow for this 2 App application

In an exemplary embodiment, the prioritization device 112 may displaysub-graphical elements based on priorities associated with thefunctional data items, as detailed in conjunction with FIG. 8. Theprioritization device 112 may calculate the priorities of the functionaldata items based on parameters such as number of times a policy is used,location, state of the electronic device 100, and the like (as shown inthe Table 3).

The prioritization device 112 may prioritize the functional data itemsbased on parameters such as number of times a functionality is used,location, state of the electronic device 100, or the like.

TABLE 4 Graphical Functionality Priority element Available (Usagehistory) Wi-Fi Wi-Fi ON  1 (10) Wi-Fi Wi-Fi OFF 1(7) Wi-Fi Wi-Fi HomeApp 2(4) Wi-Fi Wi-Fi Office App 3(2)

TABLE 5 Graphical Functionality Priority element Available (Usagehistory) Wi-Fi Wi-Fi ON  1(10) Wi-Fi Wi-Fi OFF 1(7) Wi-Fi Wi-Fi Home App3(6) Wi-Fi Wi-Fi Office App 2(6)

According to an exemplary embodiment, the priorities as shown in Table 4above may be updated based on functionality usage history, and theupdated priorities are shown in Table 5. For example, the priority ofthe Wi-Fi Home App changes from ‘2’ to ‘3’, thus becoming lower inpriority than the Wi-Fi Office App) as shown in the Table 5.

Exemplary embodiments of the electronic device 100 are not limited tothe components illustrated in FIG. 3. In other exemplary embodiments,the electronic device 100 may include more or less components comparedto that shown in FIG. 3. Further, the labels or names of the units areused only for illustrative purpose and does not limit the scope of thedisclosure. One or more components can be combined together to performfunctions identical or substantially similar to those of the electronicdevice 100.

As discussed above, FIG. 4 is an illustration in which sub-graphicalelements are generated from a graphical element, according to anexemplary embodiment. In an exemplary embodiment, the graphical elementdisplayed on to the display 108 may represent a first application suchas, for example, a network application (e.g., Wi-Fi), a mobile dataapplication, a system volume control application (e.g., volume controlapplication for the electronic device 100), display 108 orientation(e.g., landscape and portrait) application, or the like. In an exemplaryembodiment, the first application may be associated with one or morefunctional data items, and the electronic device 100 displays one ormore sub-graphical elements generated (i.e., split) from the graphicalelement of the first application. In an exemplary embodiment, each ofthe sub-graphical elements represents one of the functional data itemsassociated with the first application, as detailed in the conjunctionwith FIG. 12. The functional data items are selected from the functionaldata item database 116 based on the present state of the electronicdevice 100 and the present state of the first application.

The functional data item database 116 may include at least one of afunctionality associated with the first application, a functionalityassociated with the dynamic policy, a functionality associated with thederived policy, a functionality associated with the user created policy,and the recommendation to combine at least two of the functionalitiesassociated with the first application, the dynamic policy, the derivedpolicy, and the user created policy. The functionalities associated withthe derived policy are detailed in conjunction with FIG. 6. Thefunctionalities associated with the user created policy are detailed inconjunction with FIG. 5. The functionalities associated with the dynamicpolicy are detailed in conjunction with FIGS. 7.

According to an exemplary embodiment, the user may enter a multi-touchinput with respect to a graphical element representing an application.For example, the user may input a tap and hold gesture (e.g., longpress) or a pinch open gesture with two fingers on a graphical elementrepresenting a first application. In another exemplary embodiment, theuser may input the multi-touch input through one of various othermethods. The electronic device 100 may output device feedback (e.g.,haptic feedback, audible feedback, visual feedback, etc.) to the userindicating the availability of any functionalities which are associatedwith the first application and may be applied to other applications. Thefunctional management device 102 can determine the present condition ofthe first application and display sub-graphical elements to the user.The electronic device 100 may utilize, for example, identifiers todifferentiate the sub-graphical elements with respect to functionalityof the first application, as illustrated in one or more exemplaryembodiments described below. The user may apply a desired functionalityof the first application to another application (e.g., a secondapplication) installed on the electronic device 100, for example, bydragging a sub-graphical element corresponding to the desiredfunctionality onto the graphical element of the other application (e.g.the second application). Further, the user is not limited to selectingfrom only the displayed sub-graphical elements (e.g., selecting from thefunctionalities presented by the electronic device 100). The user candynamically create and/or modify functionalities (i.e., create userpolicies) via the electronic device 100.

According to an exemplary embodiment, the user may undo or modify anapplied functionality by inputting a gesture with respect to asub-graphical element representing the applied functionality. In anexample, a sub-graphical element representing a functionality of thefirst application is displayed by the electronic device 100 over agraphical element representing the second application. When the userenters an input with respect to the sub-graphical element (e.g., asingle tap, double tap, tap and hold, etc.), the electronic device 100may present the user with options to, for example, undo or modify thefunctionality applied to the second application. In another example, theelectronic device 100 may present the user with options to move oradditionally apply the functionality applied to the second applicationto another application (e.g., present the user with options to copyand/or drag the sub-graphical element to a graphical elementrepresenting a third application). Further detail will be provided inFIGS. 17A and 17B.

According to another exemplary embodiment, the user may create afunctionality (i.e., create a user policy) from a combination offunctionalities of multiple applications. In an example, in response toinputs entered by the user with respect to graphical elementsrepresenting the first application and the second application, theelectronic device 100 may generate sub-graphical elements for each ofthe applications. The user may enter an input combining sub-graphicalelements from the two application, thereby creating a new functionalityfrom the functionalities of the two applications. Such user createdpolicies may be stored in and later accessed from the storage device114.

FIG. 5 illustrates the framework manager 101 capable of extracting theone or more policies (500) from the policy database 118, according to anexemplary embodiment as disclosed herein. In an exemplary embodiment,the policy database 118 may include system policies 502, derivedpolicies 504, dynamic policies 506, and user created policies 508. Thefunctionality management device 102 may analyze the derived policies 504and dynamic policies 508 and store the results in heuristics data 505.The heuristics data 505 may include data on the derived policies 504 anddynamic policies 508 with respect to the user input, usage frequency, orthe like. The electronic device 100 may utilize the heuristics data inproviding priorities of functional data items to the user as describedabove with respect to Table 4 and Table 5.

The system policies 502 may include policies defined by the system orvendor during manufacture of the device (as shown in Table 6), such as,Mute/Unmute Notifications, Volume ON/OFF, Blocking Mode or the like. Thesystem tearing functionality registration can include developerregistering the tearing policy while the first application is indevelopment in the policy database 118. The OEM may provide and storegraphical elements (e.g., graphical elements specific to policies of theOEM) in a specific location of the electronic device 100. The OEM mayupdate the policy database 118 with system specific policies related toapplications (e.g., functions which the OEM sets as unchangeable by theuser).

TABLE 6 Mode to Graphical Functionality Functionality Enable/disableActions to be Policy elements Available Type functionality performedcharacteristics Camera Capture System Camera module Launch/Allow NAimages camera Camera Record videos System Camera module Launch/Allow NAvideo record Camera Flash System Flash module Allow Flash NA Camera Nocamera System Camera module Disallow NA camera

The derived policies 504 may include policies based on functionalitiesoften used by the user, policies derived by the functionality managementdevice 102, and policies derived by the user. For example, thefunctionality management device 102 may analyze functionalities oftenused by the user and merge them into a single policy or group thefunctionalities into policies based on usage frequency. In anotherexample, the user may merge two or more functionalities into a policy.The user may change, or modify, or delete any of the derived policies,as detailed in conjunction with FIG. 6.

The dynamic policies 506 may include policies based on usage ofelectronic device 100 by the user, state of the electronic device 100,state of an application, network states, and policies applied to any ofthe applications. For example, the functionality management device 102may analyze activity of each application and, based on the frequency ofeach activity and the frequency between similar activities, create adynamic policy and store the same to the dynamic policy database 506.The functionality management device 102 may automatically apply thedynamic policy to any of the applications based on user settings orpreferences. The operations of the application monitoring device aredetailed in conjunction with FIG. 7.

FIG. 6 illustrates an exemplary embodiment, in which, the derivedpolicies are created and stored to the derived policies databaseor/maintained in the derived policies database 504. According to anexemplary embodiment, the functionality management device 102 maygenerate a sub-graphical element representing a Blocking Mode of anotification application, the Blocking Mode disables, for example,incoming calls (except for specified contacts), social media,notifications, alarms, a Light Emitting Diode (LED) indicator, etc.Further, the functionality management device 102 generates asub-graphical element representing a Location-Office (Location-O)associated with a location application. According to the exemplaryembodiment, the functionality management device 102 create a new policyderived from functionalities of the notification application and thelocation application (e.g. a policy derived from both the Blocking Modeand the Location-O). For example, the electronic device may apply thederived policy to an Email application such that all Email notificationsare blocked when the electronic device 100 is at the Location-O.

The electronic device 100 may automatically enable the Blocking Modewhen at the Location-O, disabling notifications, social media, alarms,the LED indicator, and the like. In an exemplary embodiment, the derivedpolicy (Blocking Mode+Location-O), represented by graphical element 602,can also be manually enabled or disabled by the user of the electronicdevice 100. Derived policies are maintained in and accessible via thederived database 504. In an exemplary embodiment, the design and thecustom functionality associated with the graphical element 602 may beindependent of the applications from which the custom functionality isbased. For example, the design of the graphical element 602 may beillustrated different from that shown in FIG. 6 and is not limited toincluding design elements related to Blocking Mode and Location-O.Further, the custom functionality associated with the graphical elementmay be maintained even if applications from which the customfunctionality is based (e.g., Blocking Mode and Location-O) are reset oruninstalled from the electronic device 100.

The derived functionalities are created when the user utilizes the oneor more functionalities and combine (merge) them to make the newfunctionality i.e. called derived functionality.

FIG. 7 illustrates an exemplary embodiment, in which, an applicationmonitoring device 700 monitors the activity of an application. Theapplication monitoring device 700 includes application modules such as,for example, a Wi-Fi monitoring device 702, a mobile data monitoringdevice 704, and a location monitoring device 706. The aforementionedmonitoring devices are implemented as one hardware processor but mayalso be implemented as a combination of hardware processors. Uponinitiating the activity monitoring process (S702), the electronic device100 boots up (S704) and may initialize application monitoring services(S706) for one or more applications. In the example illustrated in FIG.7, the electronic device 100 initializes a Wi-Fi monitoring service(S708), initializes a mobile data monitoring service (S710), andinitializes a location monitoring service (S712).

Each application module can monitor for and record changes which occurduring the application monitoring process S702 (e.g., a Wi-Fi statechange 5714, a mobile data state change S716, a location state changeS718). For example, the Wi-Fi monitoring device 702 can monitor ON/OFFstates of Wi-Fi connections, monitor which applications installed on theelectronic device 100 are connected to or are configured to connect to aWi-Fi network, create a policy with Access Point (AP) information suchas Name, Mac address and frequency, and monitor and record the number oftimes the electronic device 100 (e.g., an application installed on theelectronic device) accesses a saved or known Wi-Fi network). The mobiledata module 704 can monitor ON/OFF states of mobile data connections,monitor which applications installed on the electronic device 100 areconnected to or are configured to connect to a 2G, 3G, or 4G networks,create network connection policies based on network data speeds, andmonitor and record the number of times the electronic device 100 (e.g.,an application installed on the electronic device) accesses a saved orknown mobile network). The location monitoring device 706 can monitorthe Global Positioning System (GPS) location of the electronic device100 and create policies according to locations frequently visited by auser (e.g., office, workplace, or the like).

The policies created by each application module may be maintained andupdated (720) in the dynamic policy database 506 by the applicationmonitoring device 700 as shown in Table 7.

TABLE 7 Mode to Graphical Functionality Functionality Enable/disableActions to be Policy elements Available Type functionality performedcharacteristics Wi-Fi Wi-Fi-ON System Wi-Fi module ON or allow NA Wi-FiWi-Fi Wi-Fi-OFF System Wi-Fi module OFF or disallow NA Wi-Fi Wi-Fi Wi-FiHome Dynamic Wi-Fi module Only allows this Mac address application Wi-FiWi-Fi Office Dynamic Wi-Fi module Only allows this Mac addressapplication

FIG. 8 is a flow diagram 800 illustrating a method in which the one ormore policies are displayed based on the recommendation engine device110 and the prioritization device 112, according to an exemplaryembodiment as disclosed herein. At step 802, the method includesdetecting device feedback in response to an input entered with respectto a graphical element representing an application (e.g., a firstapplication). In an exemplary embodiment, the functionality managementdevice 102, communicatively coupled to the prioritization device 112,may detect for device feedback.

In an exemplary embodiment, the device feedback may include, forexample, haptic feedback (e.g., vibration), visual feedback, audiblefeedback, or a combination thereof generated and output by theelectronic device 100.

At step 804, the method includes displaying the policies according topriority (e.g., displaying policies having the highest priority). In anexemplary embodiment, the display 108, communicatively coupled to theprioritization device 112, may display the policies according topriority (e.g. policies having the highest priority), as shown in theTable 4. According to an exemplary embodiment, the policies aredisplayed in response to the detection of the device feedback. Accordingto another exemplary embodiment, the policies are displayed in responseto the input entered with respect to the graphical element representingan application.

At step 806, the method includes determining whether the user isinterested in the displayed policies. In an exemplary embodiment, thefunctionality management device 102 may determine whether the user isinterested in the displayed policies. The determination may include, forexample, analyzing user activity with respect to similar policies, orrequesting and analyzing for a user input with respect to the displayedpolicies, but is not limited thereto. For example, the user activityincludes the user selecting one of the displayed policies.

If at step 806, the functionality management device 102 determines thatthe user is not interested in the displayed policies, the methodproceeds to step 808, which includes detecting for additional devicefeedback with respect to the graphical element representing the firstapplication. For example, if the user is not interested in any of thepolicies displayed in step 804, the user may enter an additional input(e.g., a multi-touch input) with respect to the graphical element toinquire or request whether additional policies are available withrespect to the first application. To notify the user that additionalpolicies are available, the electronic device 100 may output devicefeedback (examples of which are described above), and upon detection ofthe device feedback, the method may proceed to step 810. In an exemplaryembodiment, the functionality management device 102, communicativelycoupled to the prioritization device 112, may detect for the additionaldevice feedback.

At step 810, the method includes displaying the policies having the nexthighest priorities. In an exemplary embodiment, the display 108 maydisplay the policies having the next highest priority. According to anexemplary embodiment, the method terminates if there are no morepolicies to be displayed.

If at the step 806, the functionality management device 102 determinesthat the user is interested in the displayed policies, then the methodproceeds to step 812, which includes storing the displayed policies. Inan exemplary embodiment, the functionality management device 102 maystore the displayed policies in the storage device 114.

At step 814, the method includes applying the stored policies to one ormore additional applications installed on the electronic device 100(e.g., a second application). In an exemplary embodiment, the controller104 may apply the extracted policies to the additional applications.

The various actions, acts, blocks, steps, or the like in the method ofthe flow diagram 800 may be performed in the order presented, in adifferent order or simultaneously. Further, in some exemplaryembodiments, some of the actions, acts, blocks, steps, or the like maybe omitted, added, modified, skipped, or the like without departing fromthe scope of the disclosure.

FIG. 9 is a flow diagram 900 illustrating a method of managingfunctionality of applications of the electronic device 100, according toan exemplary embodiment as disclosed herein. At step 902, the methodincludes detecting an input entered with respect to a graphical elementdisplayed on a display 108 of the electronic device. The graphicalelement represents a first application installed on or accessible by theelectronic device 100. In an embodiment, the functionality managementdevice 102 may detect the input entered with respect to the graphicalelement displayed on the display 108 of the electronic device 100.

At step 904, the method includes generating at least one sub-graphicalelement from the graphical element. In an exemplary embodiment, thefunctional management device 102 may generate the least onesub-graphical element from the graphical element. The at least onesub-graphical element represents a functional data item associated withthe first application.

At step 906, the method includes controlling the display to display theat least one sub-graphical element. In an exemplary embodiment, thefunctionality management device 102 may control the display to displaythe at least one sub-graphical element.

At step 908, the method includes detecting an association event inputwith respect to a second application and the functional data itemassociated with the first application. In an exemplary embodiment, thefunctionality management device 102 may detect the association eventinput with respect to the second application and the functional dataitem associated with the first application.

At step 910, the method includes dynamically creating at least onepolicy based on the association event. In an exemplary embodiment, thefunctionality management device 102 may dynamically create at least onepolicy based on the association event.

At step 912, the method includes applying the at least one policy to thesecond application. In an exemplary embodiment, the functionalmanagement device 102 may apply the at least one policy to the secondapplication.

The various actions, acts, blocks, steps, or the like in the method ofthe flow diagram 900 may be performed in the order presented, in adifferent order or simultaneously. Further, in some exemplaryembodiments, some of the actions, acts, blocks, steps, or the like maybe omitted, added, modified, skipped, or the like without departing fromthe scope of the disclosure.

FIG. 10 is a flow diagram 1000 illustrating a method of managingfunctionality of applications of the electronic device 100, according toan exemplary embodiment as disclosed herein. At step 1002, the methodincludes detecting an input entered with respect to a graphical elementdisplayed on a display 108 of the electronic device. The graphicalelement represents a first application installed on or accessible by theelectronic device 100. In an exemplary embodiment, the functionalitymanagement device 102 may detect may detect the input entered withrespect to the graphical element displayed on the display 108 of theelectronic device 100.

At step 1004, the method includes generating at least one sub-graphicalelement from the graphical element. In an exemplary embodiment, thefunctional management device 102 may generate the least onesub-graphical element from the graphical element. The at least onesub-graphical element represents a functional data item associated withthe first application.

At step 1006, the method includes controlling the display to display theat least one sub-graphical element. In an exemplary embodiment, thefunctional management device 102 may control the display to display theat least one sub-graphical element.

At step 1008 the method includes detecting an association event inputwith respect to a second application and the functional data itemassociated with the first application. In an exemplary embodiment, thefunctional management device 102 may detect an association event inputwith respect to a second application and the functional data itemassociated with the first application.

At step 1010, the method includes dynamically creating at least onepolicy based on the association event. In an exemplary embodiment, thefunctional management device 102 may dynamically create at least onepolicy based on the association event.

At step 1012, the method includes applying the at least one policy tothe second application and/or one or more applications other than thefirst application and the second application. In an exemplaryembodiment, the functional management device 102 may apply the at leastone policy to the second application and/or one or more applicationsother than the first application and the second application. Accordingto an exemplary embodiment, the functional management device 102 mayapply the at least one policy to a plurality of applications. FIG. 11 isa flow diagram illustrating a method of generating at least onesub-graphical element from a graphical element displayed on the display108 of the electronic device 100, according to an exemplary embodimentas disclosed herein. At step 1102, the method includes detecting aninput entered by a user with respect to the graphical element (e.g., amulti-touch gesture, a tap and hold gesture, a pinch open gesture, etc.as detailed with respect to FIG. 4). At step 1104, the method includesidentifying an application (e.g., a first application) corresponding tothe graphical element and monitoring the present state of the electronicdevice 100 and the present state of the first application. Thefunctionality management device 102 may then determine whether anypolicies associated with the first application may be applied to anotherapplication (e.g., provide the user with options to apply one or morepolicies associated with the first application to a second application).Policies are described above, for example, with respect to FIG. 5 andFIG. 6.

At step 1106, the method includes determining whether one or morepolicies are available. Upon determining a policy is available, themethod proceeds to step 1108, which includes sending device feedback(e.g., haptic feedback, audible feedback, visual feedback, etc.) to theuser. At step 1110, the method includes receiving an input (i.e., longpress, swipe, pinch and zoom, or the like) from the user. At step 1112,the method includes generating sub-graphical elements based on the userinput and displaying the sub-graphical elements. Each of thesub-graphical elements may be associated with a policy included in thepolicy database 118. At step 1114, the method includes receiving a userinput of dragging and dropping a sub-graphical element to a graphicalelement representing an application (e.g., a third application) andaccordingly applying a policy associated with the dragged and droppedsub-graphical element to the application (e.g., the third application).

If the functionality management device 102 determines, at step 1106,determines that no policies are associated with the first application,the method proceeds to step 1116, which includes sending no devicefeedback to the user. Alternatively, the functionality management device102 may send visual feedback to the user (e.g., a notification message,without haptic or audible feedback) indicating that no policiesassociated with the first application are available. At step 1118, themethod terminates the operations of generating at least onesub-graphical element.

The various actions, acts, blocks, steps, or the like in the method ofthe flow diagram 1100 may be performed in the order presented, in adifferent order or simultaneously. Further, in some exemplaryembodiments, some of the actions, acts, blocks, steps, or the like maybe omitted, added, modified, skipped, or the like without departing fromthe scope of the disclosure.

FIG. 12 is an example illustration in which sub-graphical elements aregenerated from a graphical element, according to an exemplary embodimentas disclosed herein. The functionality management device 102 maygenerate and display one or more sub-graphical elements (e.g., Wi-Fisecure 1202 and the Wi-Fi unsecured 1204) from a graphical element(e.g., graphical element 1200 representing a Wi-Fi application)displayed on to the display 108. The functionality management device 102may select the sub-graphical elements based on the present state (i.e.,the present state of the electronic device 100 and the present state ofthe first application).

Unlike related art systems and methods, the method according to one ormore exemplary embodiments can enable the user to selectively applyfunctionalities of the sub-graphical elements. For example, the user maydrag the sub-graphical element Wi-Fi secure 1202 to the graphicalelement Email 1206 which represents an Email application. In addition,the user may drag the sub-graphical element Wi-Fi unsecured 1204 to thegraphical element Video Player 1208 which represents a Video playerapplication.

Thus, the method according to one or more of exemplary embodimentprovides for creating dynamic policies and selectively applying thedynamic policies to applications, rather than forcing a user to apply apolicy to all applications installed on the electronic device 100. Forexample, the Email application can be limited to transmitting/receivingdata only when the electronic device 100 is connected to a secure Wi-Finetwork connection, and the Video player application can be limited totransmitting/streaming data/videos only when the electronic device 100is connected to an unsecured Wi-Fi network connection, without imposingthe same limitations on other applications installed on the electronicdevice 100.

Further, the user may undo or modify an applied policy (or afunctionality included in the applied policy) by inputting a gesturewith respect to a sub-graphical element representing the applied policy(or the functionality included in the applied policy), as shown in theFIGS. 17A and 17B.

FIGS. 13A, 13B and 13C show an example illustration in which the dynamicpolicy is created and maintained in the dynamic policies 506 of thepolicy database 118, according to an exemplary embodiment as disclosedherein. The functionality management device 102 receives a user inputentered with respect to graphical element 1200 representing a Wi-Fiapplication (as shown in FIG. 13A). The functionality management device102 may determine how many sub-graphical elements to generate withrespect to the graphical element 1200 representing the Wi-Fiapplication. For example, the functionality management device 102 maycheck for available Wi-Fi networks and generate a sub-graphical elementfor each Wi-Fi network already saved to the electronic device 100, inaddition to available networks (e.g., connected Wi-Fi network, favoriteWi-Fi network, and most accessed Wi-Fi network, or any other saved Wi-Finetwork). For example, as shown in FIG. 13B, the display 108, coupled tothe functionality management device 102, displays sub-graphical elementsrepresenting saved/most accessed Wi-Fi networks (e.g., a sub-graphicalelement 1302 representing Wi-Fi Office (Wi-Fi O) and a sub-graphicalelement 1304 representing Wi-Fi home (Wi-Fi H)). The user drags anddrops (i.e., association event) the sub-graphical elements 1302 and 1304onto one or more graphical elements representing applications differentfrom the Wi-Fi application (e.g., onto the graphical element Email 1206and the graphical element Internet Browser 1306), and the displaydisplays the sub-graphical elements 1302 and 1304 over the graphicalelements Email 1206 and Internet Browser 1306 and in a side portion ofthe display 108, as shown in FIG. 13C.

The functionality management device 102 dynamically creates at least onepolicy based on the association event and applies the at least onepolicy to the second application, or to one or more applications otherthan the first application. The functionality management device 102applies, for example, a policy (e.g., functionality of Wi-Fi Office(Wi-Fi O)) to the Email application (represented by graphical elementEmail 1206), such that the Email application is only able totransmit/receive data when the electronic device 100 is connected toWi-Fi Office (Wi-Fi O). In another example, the Email application mayautomatically open and/or transmit/receive data when the electronicdevice 100 connects to Wi-Fi Office (Wi-Fi O). The Wi-Fi-H 1304functionality is applied to a graphical element of the internet browserapplication 1306 (as shown in FIG. 13C), where the internet browserapplication 1306 launches (operations) once the electronic device 100connects to the services of the Wi-Fi-H 1304 only. The functionalitymanagement device 102 also applies, for example, a policy (e.g.,functionality of Wi-Fi Home (Wi-Fi H)) to the Internet Browserapplication (represented by graphical element Internet Browser 1306),such that the Internet Browser is only able to transmit/receive datawhen the electronic device 100 is connected to Wi-Fi Home (Wi-Fi H). Inanother example, the Internet Browser may automatically open and/ortransmit/receive data when the electronic device 100 connects to Wi-FiHome (Wi-Fi H). The at least one dynamic policy is maintained in thedynamic policies 506 of the policy database 118.

Unlike related art systems and methods, the user may have control overdata access and application execution rights, and any other locationbased functionalities, on an application specific basis without makingchanges to network configurations or device functionalities.

The dynamic policy includes monitoring the activity of the applications(both first and second applications) and settings of the applications.The dynamic policy can be created based on the activity monitoringdescribed above. The dynamic policies are maintained in the dynamicpolicies 506 stored in the policy database 118.

The dynamic functionalities are created based on usage of electronicdevice 100 by the user, state of the electronic device 100, state of anapplication, network states or the policies applied in any applicationimplementation, as shown in the example dynamic functionalities databasebelow in Table 8.

TABLE 8 Graphical Functionality Functionality Module to enable/disableelement available type functionality Wi-Fi Home Dynamic Network moduleWi-Fi Office Dynamic Network module Wi-Fi Work Dynamic Network module

FIGS. 14A, 14B and 14C show another example illustration in which thedynamic policy is created and maintained in the dynamic policies 506 ofthe policy database 118, according to an exemplary embodiment asdisclosed herein. The electronic device 100 can switch between 2G, 3G,and 4G mobile networks, and the functionality management device 102 candynamically select a functionality (e.g., select networks mostfrequently connected to by the electronic device). Hence, thefunctionality management system 102 intelligently establishesconnections to mobile networks depending upon the network connectionstrength between the electronic device 100 and the mobile networks. Thefunctionality management device 102 receives a user input entered withrespect to graphical element 1400 representing the mobile dataapplication (as shown in FIG. 14A). The functionality management device102 may determine how many sub-graphical elements to generate withrespect to the graphical element 1400 representing the mobile dataapplication. For example, the functionality management device 102 maycheck for available mobile data networks and generate a sub-graphicalelement for each mobile data network already saved to the electronicdevice 100, in addition to available networks (e.g., connected mobiledata network, favorite mobile data network, and most accessed mobiledata network, or any other saved mobile data network) For example, asshown in FIG. 14B, the display 108, coupled to the functionalitymanagement device 102, displays sub-graphical elements representingsaved/most accessed mobile data networks (e.g., a sub-graphical element1402 representing a 2G mobile data network and a sub-graphical element1404 representing a 3G mobile data network. The user drags and drops(i.e., association event) the sub-graphical elements 1402 and 1404 ontoone or more graphical elements representing applications different fromthe mobile data network application (e.g., onto the graphical elementEmail 1206 and the graphical element Video 1208), and the displaydisplays the sub-graphical elements 1402 and 1404 over the graphicalelements Email 1206 and Video 1208 and in a side portion of the display108, as shown in FIG. 14C.

The functionality management device 102 dynamically creates at least onepolicy based on the association event and applies the at least onepolicy to the second application, or to one or more applications otherthan the first application. The functionality management device 102applies, for example, a policy (e.g., functionality of the 2G mobiledata network) to the Email application (represented by graphical elementEmail 1206), such that the Email application is only able totransmit/receive data when the electronic device 100 is connected to the2G mobile data network. In another example, the Email application maytransmit/receive data when the electronic device 100 is connected atleast to a 2G mobile network or faster. The functionality managementdevice 102 also applies, for example, a policy (e.g., functionality ofthe 3G mobile data network to a Video application (represented bygraphical element Video 1208), such that the Video application is onlyable to transmit/stream data when the electronic device 100 is connectedto a 3G mobile data network or faster.

The at least one dynamic policy of the mobile data network applicationis maintained in the dynamic policies 506 of the policy database 118(Table 9).

TABLE 9 Graphical Functionality Functionality Module to enable/disableelement available type functionality Mobile data 3 G Dynamic Networkmodule Mobile data 2 G Dynamic Network module

In another example, the electronic device 100 may extract a policyapplied to a camera application and apply the same policy to anotherapplication installed on the electronic device 100. For example, arestriction implemented for the camera application disables the cameraflash when the battery level of the electronic device is 5% or less. Theelectronic device may extract and apply this policy to any application,such as a messaging application (e.g., disable message notificationswhenever the battery level is 5% or less).

FIGS. 15A, 15B and 15C show an example illustration in which the systemfunctionality is created and maintained in the system policies 502 ofthe policy database 118, according to an exemplary embodiment asdisclosed herein. The functionality management device 102 receives auser input entered with respect to graphical element 1500 representing asound application (as shown in FIG. 15A). The functionality managementdevice 102 may determine how many sub-graphical elements to generatewith respect to the graphical element 1500 representing the soundapplication. For example, the functionality management device 102 maycheck for available sound options (e.g. configurations or profiles) andgenerate a sub-graphical element for each sound option. For example, asshown in FIG. 15B, the display 108, coupled to the functionalitymanagement device 102, displays sub-graphical element 1502 representinga sound option for unmuting notifications and a sub-graphical element1504 representing a sound option for muting notifications. The userdrags and drops (i.e., association event) the sub-graphical elements1502 and 1504 onto one or more graphical elements representingapplications different from the sound application (e.g., onto thegraphical element Email 1206 and the graphical element SNS-2 1506representing a Social

Networking Application).

The functionality management device 102 creates at least one policybased on the association event and applies the at least one policy tothe second application, or to one or more applications other than thefirst application. The functionality management device 102 applies, forexample, a policy (e.g., mute functionality) to the Email application(represented by graphical element Email 1206), such that allnotifications are muted for the Email application. The functionalitymanagement device 102 also applies, for example, a policy (e.g., unmutefunctionality) to the Social Networking application, such all audionotifications (e.g., sound, ringtone, and the like) are enabled.

Further, in addition to displaying the sub-graphical elements 1502 and1504 over the graphical elements Email 1206 and SNS-2 1506, the display108 may display the sub-graphical elements in a side portion of thedisplay 108, as shown in FIG. 15C. The at least one system policy of thesound application is maintained in the system policies 502 of the policydatabase 118. The user can further utilize the sub-graphical elements onto the display 108 to, for example, disable the functionality associatedtherewith, or apply the functionality to another application.

System policies 502 may include policies defined by the system or vendorduring manufacture of the electronic device 100, for example,mute/unmute, Blocking Mode, screen rotation (landscape or portrait), orthe like, as shown below in the system policies 502 of the policydatabase 118 (Table 10).

TABLE 10 Graphical Functionality Functionality Module to enable/disableelement available type functionality Wi-Fi Wi-Fi ON System Wi-Fi moduleWi-Fi Wi-Fi OFF System Wi-Fi module

FIGS. 16A, 16B and 16C show another example illustration in which asystem functionality is created and maintained in the system policies502 of the policy database 118, according to an exemplary embodiment asdisclosed herein. . The functionality management device 102 receives auser input entered with respect to graphical element 1600 representing ascreen orientation application (as shown in FIG. 16A). The functionalitymanagement device 102 may determine how many sub-graphical elements togenerate with respect to the graphical element 1600 representing thescreen orientation application. For example, the functionalitymanagement device 102 may check for available screen orientation options(e.g. configurations or profiles) and generate a sub-graphical elementfor each screen orientation option. For example, as shown in FIG. 16B,the display 108, coupled to the functionality management device 102,displays sub-graphical element 1602 representing a Portrait modeorientation option and a sub-graphical element 1604 representing aLandscape mode orientation option. The user drags and drops (i.e.,association event) the sub-graphical elements 1602 and 1604 onto one ormore graphical elements representing applications different from thescreen orientation application (e.g., onto the graphical elementMessages and the graphical element Video 1208 representing a Videoapplication).

The functionality management device 102 creates the at least one policybased on the association event and applies the at least one policy tothe second application. The user can now control the screen rotationbased on application. Thus, according to one or more exemplaryembodiment, the video application may operate in landscape mode.Further, the messaging application launches and operates in portraitmode (as shown in FIG. 16C).

Further, in addition to displaying the sub-graphical elements 1502 and1504 over the graphical elements Email 1206 and SNS-2 1506, the display108 may display the sub-graphical elements in a side portion of thedisplay 108, as shown in FIG. 16C.

The FIGS. 17A and 17B is an example illustration in which an appliedpolicy is disabled (reversed) in response to an input from a user,according to an exemplary embodiment as disclosed herein. The input maybe, for example, a gesture such as a long press or a swipe input on thesub-graphical element corresponding to the functional data item. Asshown, the functional data item (e.g., portrait mode) of the screenorientation application 1600 applied to the camera application 1700 canbe disabled (reversed) by performing a swipe gesture. As shown, in FIG.17B the Portrait mode orientation option is disabled (i.e., the Portraitmode orientation option is no longer applied to the Camera application).

FIGS. 18A and 18B show an example illustration in which dragging asub-graphical element to a functionality display region (e.g., anotification bar, edge portion of a display, a folder icon) on thedisplay 108 applies a functional data item associated with thesub-graphical element to all applications installed on the electronicdevice 100, according to an exemplary embodiment as disclosed herein.The user may drag and drop a sub-graphical element onto a notificationbar (e.g., primary notification bar 1800 or secondary notification bar1802) of the electronic device 100 (as shown in FIG. 18A), and therebyapply the functionality data item associated with the sub-graphicalelement. In this manner, for example, functionalities respectivelyassociated with sub-graphical elements may be applied to allapplications installed on the electronic device 100. For example,referring back to the derived policy (Blocking Mode+Location-O)represented by graphical element 602, as described above with respect toFIG. 6, when the graphical element 602 is dragged and dropped onto thenotification bar (e.g., primary notification bar 1800 or secondarynotification bar 1802) of the electronic device 100, the electronicdevice 100 applies the derived functionality to all applicationsinstalled on the electronic device 100. That is, the electronic device100 disables notifications, calls, the LED indicator, and the like, forall applications when the electronic device 100 is at Location-O.

In an exemplary embodiment, the functionality region can be locatedanywhere on the display 108 of the electronic device 100.

FIGS. 19A and 19B is an example illustration of displaying sub-graphicalelements representing functional data items which are associated withthe first application and currently applied to the second application,according to an exemplary embodiment as disclosed herein. When thesystem (e.g., functional management device 102) creates a newfunctionality based on usage frequency of a particular application,state and condition of the electronic device 100, the electronic device100 may automatically update the functional data item database 116 withapplications listed according to corresponding utilized functionalities.For example, the functional management device 102 may createsub-graphical element 1302 representing Wi-Fi Office (Wi-Fi O) based ona relatively high usage frequency of Wi-Fi Office (Wi-Fi O). In theexample of FIG. 19B, the user of the electronic device 100 may viewwhich functionalities are applied to the Email application (e.g., Wi-FiOffice and Portrait mode orientation) by entering an input (e.g., apinch open input) with respect to the graphical element Email 1206.Further in the example, the user may selectively disable (i.e. remove)the functionality regarding Wi-Fi Office (Wi-Fi O) from the Emailapplication by entering an additional input (e.g. a swipe input whichbegins at the sub-graphical element 1302).

Thus, the user of the electronic device 100 may selectively removefunctionalities from desired applications.

FIG. 20 is an example illustration of applying multiple functional dataitems to an application, according to an exemplary embodiment asdisclosed herein. For example, any derived policy (e.g., BlockingMode+Location-O), dynamic policy (e.g., Wi-Fi-O), system policy (e.g.,Landscape mode orientation+Video application), and/or user createdfunctionality (e.g., combination of a derived policy, dynamic policy,and system policy) can be placed and stored in a functionality region.Thus, the user can drag multiple functionalities from a functionalityregion (e.g., the right portion of the display) onto the graphicalelement Email 1206 of the Email application, (as shown in FIG. 20).According to an exemplary embodiment, the functionality region is adesignated area on a display screen, which displays icons representingdifferent functional data items.

FIG. 21 illustrates an exemplary embodiment, in which, the policiesapplied to an application are imposed. The user may input a gesture withrespect to the graphical element Camera 1700 of representing a cameraapplication to determine the number of the policies currently appliedthereto. The display 108 may display one or more sub-graphical elementswhich correspond to functional data items applied to the cameraapplication.

FIG. 22 illustrates a computing environment implementing the method ofmanaging the functionality of the applications in the electronic device100, according to exemplary embodiments as disclosed herein. As depictedin FIG. 22, the computing environment 2200 comprises at least oneprocessor 2208 that is equipped with a controller 2204 and an ArithmeticLogic Unit (ALU) 2206, a memory 2210, a storage device 2212, networkingdevices 2216 and Input/Output (I/O) devices 2214. The processor 2208 isresponsible for processing the instructions of the technique. Theprocessor 2208 may execute operations based on commands received fromthe controller. Further, any logical and arithmetic operations involvedin the execution of the instructions may be computed with the help ofthe ALU 2206.

The overall computing environment 2200 can be composed of multiplehomogeneous and/or heterogeneous cores, multiple CPUs of differentkinds, special media and other accelerators. The processor 2208 isresponsible for processing the instructions of the technique. Further,the processor 2208 may be implemented as a single chip or over multiplechips.

The technique comprising of instructions and codes required for theimplementation are stored in the memory unit 2210, the storage 2212 orboth. At the time of execution, the instructions may be fetched from thecorresponding memory 2210 or storage 2212, and executed by theprocessing unit 2208.

In case of any hardware implementations, various networking devices 2216or external I/O devices 2214 may be connected to the computingenvironment to support the implementation through the networking unitand the I/O device unit.

The exemplary embodiments disclosed herein can be implemented through atleast one software program running on at least one hardware device andperforming network management functions to control the elements. Theelements shown in the FIGS. 1 through 22 include blocks which can be atleast one of a hardware device, or a combination of hardware device andsoftware module.

The foregoing description of the specific exemplary embodiments will sofully reveal the general nature of the exemplary embodiments herein thatothers can, by applying current knowledge, readily modify or adapt forvarious applications such specific exemplary embodiments withoutdeparting from the generic concept, and, therefore, such adaptations andmodifications should and are intended to be comprehended within themeaning and range of equivalents of the disclosed exemplary embodiments.It is to be understood that the phraseology or terminology employedherein is for the purpose of description and not of limitation.Therefore, while the exemplary embodiments herein have been described interms of preferred embodiments, those skilled in the art will recognizethat the exemplary embodiments herein can be practiced with modificationwithin the spirit and scope of the embodiments as described herein.

What is claimed is:
 1. An electronic device for managing functionalityof applications, the electronic device comprising: a memory; and aprocessor, coupled to the memory, configured to: detect an input withrespect to a graphical element displayed on a display of the electronicdevice, the graphical element representing a first application; generateat least one sub-graphical element from the graphical element, the atleast one sub-graphical element representing a functional data itemassociated with the first application; and control the display todisplay the at least one sub-graphical element.
 2. The electronic deviceof claim 1, wherein the processor is further configured to: determine atotal number of functional data items associated with the firstapplication; and dynamically generate at least two sub-graphicalelements, wherein the at least two sub-graphical elements are equal orless in number compared to the total number of functional data itemsassociated with the first application.
 3. The electronic device of claim1, wherein the processor is further configured to: detect an associationevent input with respect to a second application and the functional dataitem associated with the first application; dynamically create at leastone policy based on the association event; and apply the at least onepolicy to the second application.
 4. The electronic device of claim 3,wherein the processor is further configured to: apply the at least onepolicy to a third application other than the first application and thesecond application.
 5. The electronic device of claim 3, wherein the atleast one policy comprises at least one of a dynamic policy, a derivedpolicy, and a user created policy.
 6. The electronic device of claim 3,wherein the processor is further configured to display the at least onesub-graphical element in a functionality display region provided on atleast a portion of the display of the electronic device.
 7. Theelectronic device of claim 3, wherein the processor is furtherconfigured to: detect when the at least one policy applied to the secondapplication is met; identify at least one functionality which isassociated with the first application and configured for the secondapplication based on the at least one policy; and perform an action onthe second application corresponding to the at least one functionality.8. The electronic device of claim 7, wherein the action comprises atleast one of: removing the at least one functionality, enabling the atleast one functionality, and disabling the at least one functionality.9. The electronic device of claim 1, wherein the functional data itemcomprises at least one of: a functionality associated with the firstapplication, a functionality associated with a dynamic policy, afunctionality associated with a derived policy, a functionalityassociated with a user created policy, and a recommendation of combiningat least two of the functionalities associated with the firstapplication, the dynamic policy, the derived policy, and the usercreated policy.
 10. The electronic device of claim 1, wherein thedisplay is configured to display the at least one sub-graphical elementbased on a priority associated with the functional data item.
 11. Anelectronic device for managing a functionality of applications, theelectronic device comprising: a memory; and a processor , coupled to thememory , configured to: detect an input entered with respect to agraphical element representing a first application displayed on adisplay of the electronic device; and control the display to display atleast one sub-graphical element representing a functional data itemassociated with a second application in response to the detected input.12. The electronic device of claim 11, wherein the processor is furtherconfigured to: detect an association event input with respect to thefirst application and the functional data item associated with thesecond application; and perform an action on the first application basedon the association event.
 13. The electronic device of claim 12, whereinthe action comprises at least one of: dynamically creating and applyingat least one policy to the first application based on the associationevent, enabling at least one functionality associated with the secondapplication, and disabling the at least one functionality associatedwith the second application.
 14. The electronic device of claim 11,wherein the processor is further configured to: detect that at least onepolicy is met for the first application; identify at least onefunctionality which is associated with the second application andconfigured for the first application based on the at least one policy;and perform an action on the first application corresponding to the atleast one functionality.
 15. The electronic device of claim 14, whereinthe action comprises at least one of: inverting the at least onefunctionality, enabling the at least one functionality, and disablingthe at least one functionality.
 16. The electronic device of claim 11,wherein the functional data item comprises at least one of: afunctionality associated with the first application, a functionalityassociated with a dynamic policy, a functionality associated with aderived policy, a functionality associated with a user created policy,and a recommendation to combine at least two of the functionalitiesassociated with the second application, the dynamic policy, the derivedpolicy, and the user created policy.
 17. The electronic device of claim11, wherein the processor is configured to display the at least onesub-graphical element on the display based on a priority associated withthe functional data item.
 18. A method of managing functionality ofapplications of an electronic device, the method comprising: detecting,by a processor , an input entered with respect to a graphical elementdisplayed on a display of the electronic device, the graphical elementrepresenting a first application; generating, by the processor, at leastone sub-graphical element from the graphical element, the at least onesub-graphical element representing a functional data item associatedwith the first application; and controlling, by the processor, thedisplay to display the at least one sub-graphical element.
 19. Themethod of claim 18, further comprising: detecting, by the processor, anassociation event input with respect to a second application and thefunctional data item associated with the first application; dynamicallycreating, by the processor, at least one policy based on the associationevent; and applying, by the processor, the at least one policy to thesecond application.
 20. The method of claim 19, further comprising:applying, by the processor, the at least one policy to a thirdapplication other than the first application and the second application.